#include <stdio.h>
#include <stdlib.h>

int *myfunc(int *p, int nSize) {
    int count = 0;
    for (int *ptr=p;ptr<p+nSize;ptr++){
        if (*ptr!=0){
            *(p+count++) = *ptr;
        }
    }
    while (count<nSize){
        *(p+count++) = 0;
    }
    return p;
}

int main() {
    int nSize;
    scanf("%d", &nSize);
    int *X = (int *)malloc(nSize * sizeof(int));
    for (int i = 0; i < nSize; i++) {
        scanf("%d", &X[i]);
    }
    int *result = myfunc(X, nSize);
    for (int i = 0; i < nSize; i++) {
        printf("%d ", result[i]);
    }
    return 0;
}